package common.model.po;

import com.baomidou.mybatisplus.annotation.TableName;
import common.model.po.base.BasePo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 建筑（包括生产机器、物流、照明、墙壁等）
 *
 * @author 米泽鹏
 * @since 2022-02-26
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ToString(callSuper = true)
@TableName("g_building")
public class GBuilding extends BasePo<GBuilding> {

	private static final long serialVersionUID = 1L;

	/**
	 * 建筑名称
	 */
	private String buildingName;

	/**
	 * 建筑描述
	 */
	private String description;

	/**
	 * 同级中的排序
	 */
	private Integer sort;

	/**
	 * 自定义排序
	 */
	private Integer customSort;

	/**
	 * 类别id
	 */
	private Long classificationId;

	/**
	 * 传送带入口数量
	 */
	private Integer beltEntrancesCount;

	/**
	 * 管道入口数量
	 */
	private Integer pipeInletsCount;

	/**
	 * 传送带出口数量
	 */
	private Integer beltOutletsCount;

	/**
	 * 管道出口数量
	 */
	private Integer pipeOutletsCount;

	/**
	 * 无区别管道口数量
	 */
	private Integer pipeHoleCount;

	/**
	 * 是否为产能建筑：0-否	1-是
	 */
	private Integer productive;

	/**
	 * 是否需要供电：0-否	1-是
	 */
	private Integer needPower;

	/**
	 * 功率（MW）
	 */
	private BigDecimal power;

	/**
	 * 能否超频：	0-不能	1-能
	 */
	private Integer overclockable;

	/**
	 * 是否是载具：	0-否	1-是
	 */
	private Integer isVehicle;

	/**
	 * 是否需要特定地貌才能建造：	0-不需要	1-需要
	 */
	private Integer isRequireLandform;

	/**
	 * 图片地址
	 */
	private String image;

	@Override
	public Serializable pkVal() {
		return super.getId();
	}

}
